IF OBJECT_ID('dbo.zwroc_date') IS NOT NULL
	DROP FUNCTION dbo.zwroc_date;
GO

CREATE FUNCTION dbo.zwroc_date()
RETURNS DATETIME
AS
BEGIN
	RETURN GETDATE();
END;
GO


-- jeli w bazie istnieje perspektywa ...
IF OBJECT_ID('dbo.v_losowa_liczba') IS NOT NULL
	DROP VIEW dbo.v_losowa_liczba;  -- ... to j usuwamy
GO

-- tworzymy now perspektyw
CREATE VIEW dbo.v_losowa_liczba
AS
-- nastpuje wylosowanie liczby z przedziau 0-100
SELECT CAST(RAND() * 100 AS INT) AS losowa_liczba;
GO

-- jeli w bazie jest funkcja ...
IF OBJECT_ID('dbo.zwroc_losowa_liczbe') IS NOT NULL
	DROP FUNCTION dbo.zwroc_losowa_liczbe; -- ... to j usuwamy
GO

-- tworzymy now funkcj
CREATE FUNCTION dbo.zwroc_losowa_liczbe()
RETURNS INT
AS
BEGIN
  -- wewntrz funkcji nastpuje pobranie wartoci z perspektywy
	RETURN (SELECT losowa_liczba FROM dbo.v_losowa_liczba);
END;
GO


SELECT  
	dbo.zwroc_date() AS Data, 
	dbo.zwroc_losowa_liczbe() AS Liczba_losowa, 
	NEWID() AS ID 
FROM dbo.Pracownicy

